Vector graphics based document exchange formats, such as a portable document format (PDF), provide a set of rendering instructions that allow documents to be interpreted and displayed to users in a standardized fashion, without requiring a user's computer to have the original software application that the content was created in. MICROSOFT® created XML Paper Specification (XPS) as a vector graphics based document format to allow XML content to be rendered in a standardized and meaningful way. One problem with vector graphics based documents is that viewing applications may know very little about the real content of a particular document except for how to render it correctly. For example, the viewing application may have no idea that the content of the document includes one or more bulleted or numbered lists.
Lists can deliver information in ways that are easier to read and understand than plain text. The presence of lists in a vector graphics based document presents particular problems when converting the documents to more end-user-friendly formats used in destination programs. Viewing applications will have information describing how to draw the lists, but they do not necessarily have any information indicating that what they are drawing is a list, so they may be limited in their ability to read or copy the list in a way that is meaningful to the user. The issue of rendering lists meaningfully is complicated by the potential presence of nested lists, or lists within lists. Take for example, a main list, numbered 1, 2, 3. Suppose item 1 consists of items underneath it numbered a, b, and c. Within that list designated by lower case letters, “a” contains items 1) and 2)—in effect, a third list. As you can see from this example, this list actually consists of three lists from a programming standpoint.